Field
This disclosure is generally related to electronic design automation. More specifically, this disclosure is related to methods and apparatuses for logic simulation and/or emulation.
Related Art
Rapid advances in computing technologies have been made possible by advances in design and verification tools because without such tools it would be almost impossible to design and verify complicated integrated circuits which are commonly found in today's computing devices. Logic simulation and emulation technologies play an important role in verifying a circuit design.
Note that it is generally desirable to improve accuracy of logic simulation and/or emulation technologies. For example, semiconductor companies often use hardware emulation to verify the behavior of a circuit design by emulating the circuit design over millions of cycles. If a bug is detected during hardware emulation, the bug is typically localized to a reasonably small range of cycles, e.g., thousands of cycles. Then, a detailed logic simulation is performed over the small range of cycles to debug the circuit.
To successfully debug the circuit using this approach, the simulator should ideally simulate the circuit in a manner that follows hardware semantics. If the logic simulator simulates the circuit in a manner that does not follow hardware semantics, the logic simulator may not be able to replicate the bug, or the bug may manifest itself differently during the simulation. In either case, the bug will not be fixed. Unfortunately, conventional logic simulators do not simulate the circuit in a manner that follows hardware semantics.